System and Method for Monitoring Whole Home Digital Video Recorder Usage for Internet Protocol Television

ABSTRACT

The subject disclosure describes identifying a table associated with a set-top box that receives services from equipment of a video head-end office, where the table indicates that the set-top box has requested a video stream that would exceed a first number of video streams allocated to the set-top box and would exceed a bandwidth configuration, detecting a conflicting event according to information in the table, reconfiguring the bandwidth configuration allocated to the plurality of set-top boxes to resolve the conflicting event, determining a second number of video streams requested by the plurality of set-top boxes when the conflicting event occurred, determining a third number of video streams to resolve the conflicting event based on a difference between the first number of video streams and the second number of video streams, and instructing the equipment to provide the third number of video streams to the set-top box. Other embodiments are disclosed.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.13/847,055 filed Mar. 19, 2013 by Ospalik et al., entitled “System andMethod for Monitoring Whole Home Digital Video Recorder Usage forInternet Protocol Television”, which is a continuation of U.S. patentapplication Ser. No. 12/580,862 filed Oct. 16, 2009 (now U.S. Pat. No.8,434,121), each of which are incorporated by reference herein in theirentirety.

FIELD OF THE DISCLOSURE

The present disclosure generally relates to communications networks, andmore particularly relates to systems and method for monitoring wholehome digital video recorder usage for Internet Protocol television.

BACKGROUND OF THE DISCLOSURE

An Internet Protocol television (IPTV) service provider can transmit anIPTV signal to a user via a central office, a serving area interface,and a residential gateway. The IPTV service provider can offer the usera variety of different television programs and/or movies. For example,the IPTV service provider can supply users with real-time televisionprograms that are typically available for the users to watch only at aspecific date and time. The IPTV service provider can also offer theusers on-demand movies that are available for an extended amount of timeand that are provided to the users upon request of the on-demand movie.

BRIEF DESCRIPTION OF THE DRAWINGS

It will be appreciated that for simplicity and clarity of illustration,elements illustrated in the Figures have not necessarily been drawn toscale. For example, the dimensions of some of the elements areexaggerated relative to other elements. Embodiments incorporatingteachings of the present disclosure are shown and described with respectto the drawings presented herein, in which:

FIG. 1 is a block diagram illustrating an Internet Protocol Television(IPTV) network in accordance with one embodiment of the presentdisclosure;

FIG. 2 is a block diagram illustrating an embodiment of the IPTVnetwork;

FIG. 3 is a block diagram of a portion of the IPTV network;

FIG. 4 is an exemplary staging table including bandwidth configurationdata for a customer premises of the IPTV network;

FIG. 5 is a flow diagram of a method for generating a stream conflictevent for the IPTV network;

FIG. 6 is a flow diagram of a method for updating the bandwidthconfiguration of the customer premises of the IPTV network; and

FIG. 7 is an illustrative embodiment of a general computer system.

The use of the same reference symbols in different drawings indicatessimilar or identical items.

DETAILED DESCRIPTION OF THE DRAWINGS

The numerous innovative teachings of the present application will bedescribed with particular reference to the presently preferred exemplaryembodiments. However, it should be understood that this class ofembodiments provides only a few examples of the many advantageous usesof the innovative teachings herein. In general, statements made in thespecification of the present application do not necessarily delimit anyof the various claimed inventions. Moreover, some statements may applyto some inventive features but not to others.

FIG. 1 shows an IPTV system 100 including a client facing tier 102, anapplication tier 104, an acquisition tier 106, and an operations andmanagement tier 108. Each tier 102, 104, 106, and 108 is coupled to oneor both of a private network 110 and a public network 112. For example,the client-facing tier 102 can be coupled to the private network 110,while the application tier 104 can be coupled to the private network 110and to the public network 112 such as the Internet. The acquisition tier106 can also be coupled to the private network 110 and to the publicnetwork 112. Moreover, the operations and management tier 108 can becoupled to the public network 112.

The various tiers 102, 104, 106, and 108 communicate with each other viathe private network 110 and the public network 112. For instance, theclient-facing tier 102 can communicate with the application tier 104 andthe acquisition tier 106 via the private network 110. The applicationtier 104 can also communicate with the acquisition tier 106 via theprivate network 110. Further, the application tier 104 can communicatewith the acquisition tier 106 and the operations and management tier 108via the public network 112. Moreover, the acquisition tier 106 cancommunicate with the operations and management tier 108 via the publicnetwork 112. In a particular embodiment, elements of the applicationtier 104 can communicate directly with the client-facing tier 102.

The client-facing tier 102 can communicate with user equipment via aprivate access network 166, such as an Internet Protocol Television(IPTV) network. In an illustrative embodiment, modems such as a firstmodem 114 and a second modem 122 can be coupled to the private accessnetwork 166. The client-facing tier 102 can communicate with a firstrepresentative set-top box (STB) device 116 via the first modem 114 andwith a second representative set-top box device 124 via the second modem122. The client-facing tier 102 can communicate with a large number ofset-top boxes over a wide geographic area, such as a regional area, ametropolitan area, a viewing area, or any other suitable geographic areathat can be supported by networking the client-facing tier 102 tonumerous set-top box devices. In one embodiment, the client-facing tier102 can be coupled to the modems 114 and 122 via fiber optic cables.Alternatively, the modems 114 and 122 can be digital subscriber line(DSL) modems that are coupled to one or more network nodes via twistedpairs, and the client-facing tier 102 can be coupled to the networknodes via fiber-optic cables. Each set-top box device 116 and 124 canprocess data received from the private access network 166 via an IPTVsoftware platform such as Microsoft™ TV IPTV Edition.

The first set-top box device 116 can be coupled to a first displaydevice 118, such as a first television monitor, and the second set-topbox device 124 can be coupled to a second display device 126, such as asecond television monitor. Moreover, the first set-top box device 116can communicate with a first remote control 120, and the second set-topbox device can communicate with a second remote control 128. In anexemplary, non-limiting embodiment, each set-top box device 116 and 124can receive data or video from the client-facing tier 102 via theprivate access network 166 and render or display the data or video atthe display device 118 or 126 to which it is coupled. The set-top boxdevices 116 and 124 thus may include tuners that receive and decodetelevision programming information for transmission to the displaydevices 118 and 126. Further, the set-top box devices 116 and 124 caninclude an STB processor 170 and an STB memory device 172 that isaccessible to the STB processor. In a particular embodiment, the set-topbox devices 116 and 124 can also communicate commands received from theremote controls 120 and 128 back to the client-facing tier 102 via theprivate access network 166.

In an illustrative embodiment, the client-facing tier 102 can include aclient-facing tier (CFT) switch 130 that manages communication betweenthe client-facing tier 102 and the private access network 166 andbetween the client-facing tier 102 and the private network 110. Asshown, the CFT switch 130 is coupled to one or more data servers 132that store data transmitted in response to user requests, such asvideo-on-demand material. The CFT switch 130 can also be coupled to aterminal server 134 that provides terminal devices, such as a gameapplication server and other devices with a common connection point tothe private network 110. In a particular embodiment, the CFT switch 130can also be coupled to a video-on-demand (VOD) server 136.

The application tier 104 can communicate with both the private network110 and the public network 112. In this embodiment, the application tier104 can include a first application tier (APP) switch 138 and a secondAPP switch 140. In a particular embodiment, the first APP switch 138 canbe coupled to the second APP switch 140. The first APP switch 138 can becoupled to an application server 142 and to an OSS/BSS gateway 144. Theapplication server 142 provides applications to the set-top box devices116 and 124 via the private access network 166, so the set-top boxdevices 116 and 124 can provide functions such as display, messaging,processing of IPTV data and VOD material. In a particular embodiment,the OSS/BSS gateway 144 includes operation systems and support (OSS)data, as well as billing systems and support (BSS) data.

The second APP switch 140 can be coupled to a domain controller 146 thatprovides web access, for example, to users via the public network 112.The second APP switch 140 can be coupled to a subscriber and systemstore 148 that includes account information, such as account informationthat is associated with users who access the system 100 via the privatenetwork 110 or the public network 112. In a particular embodiment, theapplication tier 104 can also include a client gateway 150 thatcommunicates data directly to the client-facing tier 102. In thisembodiment, the client gateway 150 can be coupled directly to the CFTswitch 130. The client gateway 150 can provide user access to theprivate network 110 and the tiers coupled thereto.

In a particular embodiment, the set-top box devices 116 and 124 canaccess the system via the private access network 166 using informationreceived from the client gateway 150. The private access network 166provides security for the private network 110. User devices can accessthe client gateway 150 via the private access network 166, and theclient gateway 150 can allow such devices to access the private network110 once the devices are authenticated or verified. Similarly, theclient gateway 150 can prevent unauthorized devices, such as hackercomputers or stolen set-top box devices, from accessing the privatenetwork 110 by denying access to these devices beyond the private accessnetwork 166.

For example, when the set-top box device 116 accesses the system 100 viathe private access network 166, the client gateway 150 can verifysubscriber information by communicating with the subscriber and systemstore 148 via the private network 110, the first APP switch 138 and thesecond APP switch 140. Further, the client gateway 150 can verifybilling information and status by communicating with the OSS/BSS gateway144 via the private network 110 and the first APP switch 138. TheOSS/BSS gateway 144 can transmit a query across the first APP switch138, to the second APP switch 140, and the second APP switch 140 cancommunicate the query across the public network 112 to the OSS/BSSserver 164. After the client gateway 150 confirms subscriber and/orbilling information, the client gateway 150 can allow the set-top boxdevice 116 access to IPTV content and VOD content. If the client gateway150 cannot verify subscriber information for the set-top box device 116,such as because it is connected to a different twisted pair, the clientgateway 150 can deny transmissions to and from the set-top box device116 beyond the private access network 166.

The acquisition tier 106 includes an acquisition tier (AQT) switch 152that communicates with the private network 110. The AQT switch 152 canalso communicate with the operations and management tier 108 via thepublic network 112. In a particular embodiment, the AQT switch 152 canbe coupled to a live acquisition server 154 that receives televisioncontent, for example, from a broadcast service 156. Further, the AQTswitch can be coupled to a video-on-demand importer server 158 thatstores television content received at the acquisition tier 106 andcommunicate the stored content to the client-facing tier 102 via theprivate network 110.

The operations and management tier 108 can include an operations andmanagement tier (OMT) switch 160 that conducts communication between theoperations and management tier 108 and the public network 112. In theillustrated embodiment, the OMT switch 160 is coupled to a TV2 server162. Additionally, the OMT switch 160 can be coupled to an OSS/BSSserver 164 and to a simple network management protocol (SNMP) monitor166 that monitors network devices. In a particular embodiment, the OMTswitch 160 can communicate with the AQT switch 152 via the publicnetwork 112.

In a particular embodiment during operation of the IPTV system, the liveacquisition server 154 can acquire television content from the broadcastservice 156. The live acquisition server 154 in turn can transmit thetelevision content to the AQT switch 152 and the AQT switch can transmitthe television content to the CFT switch 130 via the private network110. Further, the television content can be encoded at the D-servers132, and the CFT switch 130 can communicate the television content tothe modems 114 and 122 via the private access network 166. The set-topbox devices 116 and 124 can receive the television content from themodems 114 and 122, decode the television content, and transmit thecontent to the display devices 118 and 126 according to commands fromthe remote control devices 120 and 128.

Additionally, at the acquisition tier 106, the VOD importer server 158can receive content from one or more VOD sources outside the IPTV system100, such as movie studios and programmers of non-live content. The VODimporter server 158 can transmit the VOD content to the AQT switch 152,and the AQT switch 152 in turn can communicate the material to the CFTswitch 130 via the private network 110. The VOD content can be stored atone or more servers, such as the VOD server 136.

When a user issues a request for VOD content to the set-top box device116 or 124, the request can be transmitted over the private accessnetwork 166 to the VOD server 136 via the CFT switch 130. Upon receivingsuch a request, the VOD server 136 can retrieve requested VOD contentand transmit the content to the set-top box device 116 or 124 across theprivate access network 166 via the CFT switch 130. In an illustrativeembodiment, the live acquisition server 154 can transmit the televisioncontent to the AQT switch 152, and the AQT switch 152 in turn cantransmit the television content to the OMT switch 160 via the publicnetwork 112. In this embodiment, the OMT switch 160 can transmit thetelevision content to the TV2 server 162 for display to users accessingthe user interface at the TV2 server. For example, a user can access theTV2 server 162 using a personal computer 168 coupled to the publicnetwork 112.

The domain controller 146 communicates with the public network 112 viathe second APP switch 140. Additionally, the domain controller 146 cancommunicate via the public network 112 with the personal computer 168.For example, the domain controller 146 can display a web portal via thepublic network 112 and allow users to access the web portal using the PC168. Further, in an illustrative embodiment, the domain controller 146can communicate with at least one wireless network access point 178 overa data network 176. In this embodiment, each wireless network accessdevice 178 can communicate with user wireless devices such as a cellulartelephone 184.

In a particular embodiment, the set-top box devices can include an STBcomputer program 174 that is embedded within the STB memory device 172.The STB computer program 174 can contain instructions to receive andexecute at least one user television viewing preference that a user hasentered by accessing an Internet user account via the domain controller146. For example, the user can use the PC 168 to access a web portalmaintained by the domain controller 146 via the Internet. The domaincontroller 146 can query the subscriber and system store 148 via theprivate network 110 for account information associated with the user. Ina particular embodiment, the account information can associate theuser's Internet account with the second set-top box device 124. Forinstance, in an illustrative embodiment, the account information canrelate the user's account to the second set-top box device 124 byassociating the user account with an IP address of the second set-topbox device, with data relating to one or more twisted pairs connectedwith the second set-top box device, with data related to one or morefiber optic cables connected with the second set-top box device, with analphanumeric identifier of the second set-top box device, with any otherdata that is suitable for associating second set-top box device with auser account, or with any combination of these.

FIG. 2 shows one example embodiment of a television distribution systemor network 200, using IPTV technology in this example but not limitedthereto, adapted to provide, among other things, the VOD content. Thenetwork 200 may include a super head-end office (SHO) 210 foracquisition and encoding of video content, one or more video head-endoffices (VHO) 220 in each demographic market area (DMA), one or moreintermediate offices (IO) 230, one or more central offices (CO) 240located in each metropolitan area, and customer premises 250, that maybe located in single or multiple dwelling units. In one exampleembodiment, the network 200 may be connected through a plurality of highspeed communication links 260 using physical transport layers such asfiber, cable, twisted pair, air, or other media.

In one example embodiment of the IPTV video delivery system, the SHO 210distributes VOD content to one or more VHOs 220, which may be spreadacross a wide geographic territory such as an entire country. The SHO210 may, for example, be in a central location for acquisition andaggregation of national-level broadcast television (or linear)programming, and VOD assets. A redundant SHO 210 may be provided forbackup in case of failure. The SHO 210 may also provide the centralpoint of VOD content acquisition and insertion into the IPTV network.VOD content may be received from various sources and processed/encodedto codec and bit-rate requirements for the communication network fortransmission to the VHO 220 over the high speed communication links. TheVHOs 220 are the video distribution points within each DMA or geographicregion.

FIG. 3 shows a portion 300 of the IPTV network including the VHOs 220, asubscriber event transmission interface (SETI) 302, and an enterprisedatabase warehouse (EDW) 304. The VHO 220 is in communication with theset-top box device 116 located at the customer premises 250, and incommunication with the SETI 302, which in turn is in communication withthe EDW 304. The SETI 302 preferably includes a SETI database server 306and a SETI application server 308. The SETI database server 306 is incommunication with the VHOs 220 and with the SETI application server308, which in turn is in communication with the EDW 304.

When a new customer premises 250 is connected to the VHO 220, thecustomer premises can be allocated a specific amount of bandwidth fortransmission of IPTV video streams over the communication link 260.Additionally, the amount of bandwidth allocated for the IPTV videostreams can be divided up into an amount of bandwidth available foringress into the customer premises 250 and an amount of bandwidthavailable for egress from the customer premises. During the connectionof the IPTV service to the customer premises 250, a total number ofhigh-definition (HD) video streams and a total number ofstandard-definition (SD) video streams available for ingress and egressfrom the customer premises can be set based on the amount of bandwidthavailable for ingress and the amount of bandwidth available for egress.For example, the number of HD and SD video streams available for ingressto the customer premises 250 can be four total video streams, such asone HD video stream and three SD video streams. In another embodiment,the number of HD and SD video streams available for ingress to thecustomer premises 250 can be allocated as two HD video streams and twoSD video streams.

The total amount of bandwidth allocated to the customer premises 250,the total number of HD video streams, and the total number of SD videostreams available for ingress and egress from the customer premises canbe compiled as a bandwidth configuration for the customer premises. TheVHO 220 associated with the customer premises 250 can generate a streamprofile event for the customer premises, such that the stream profileevent includes the bandwidth configuration of the customer premises. TheVHO 220 can store a stream profile event for each respective customerpremises 250 connected to the VHO. The stream profile event can bestored in the VHO 220 when a customer premises 250 is first connected tothe IPTV service, and a new stream profile event can be stored for thecustomer premises when the amount of bandwidth allocated to the customerpremises and/or the number of HD and SD video streams available to thecustomer premises have changed.

When the connection of the IPTV service to the customer premises 250 iscompleted, the customer premises can have multiple set-top box devicesthat each can receive and display different video streams from the IPTVnetwork 100. The set-top box devices can also include digital videorecorders, such that the set-top box devices can record the videostreams received from the IPTV network 100. When a set-top box deviceassociated with customer premises 250 requests a video stream of atelevision channel, the requested video stream may exceed the amount ofbandwidth allocated to the customer premises and/or may exceed thenumber of HD and/or SD video streams available to the customer premises.When the amount of bandwidth and/or the number of video streamsavailable are exceeded, the VHO 220 can generate a stream conflict eventfor the customer premises 250. The stream conflict event can include thetotal number of HD video streams then being used by the customerpremises 250, the total number of SD video streams being used by thecustomer premises, and the total amount of bandwidth being used by thecustomer premises when the stream conflict event is generated. Thestream conflict event can also include an identification of the set-topbox device within the customer premises 250 that caused the amount ofbandwidth and/or the number of video streams available to be exceeded,as discussed more fully below with respect to FIG. 4. The VHO 220 canstore separate stream profile events and stream conflict events for eachof the customer premises 250.

The SETI database server 302 can perform a SETI data collection processto collect the stream profile events and the stream conflict events fromeach of the VHOs 220. Thus, the SETI database server 302 can obtain thedifferent stream profile events and stream conflict events for each ofthe customer premises 250 from the VHOs 220. The SETI database server302 can generate a data file for each VHO 220 based on the streamprofile events and on the stream conflict events received from the VHO.The SETI database server 302 can then transfer the data from the file ofthe VHO 220 to a staging table 400 shown in FIG. 4.

FIG. 4 shows an exemplary embodiment of the staging table 400 for astream profile event 402. In another embodiment, the staging table 400can be for a stream conflict event. The staging table 400 includes atelevision receiver or set-top box device identification 404, arecording event time stamp 406, and data 408. The television receiveridentification 404 can be used to identify the set-top box device, suchas the set-top box device 116, within the customer premises 250 that isassociated with the stream profile event. If the staging table 400 is astream conflict event, the television receiver identification 404 can beused to identify the set-top box device that caused the stream conflictevent to be generated. The recording event time stamp 406 can be used toidentify when the stream profile event 402 or the stream conflict eventwas generated, such as the date, and time.

The data 408 recorded in the staging table 400 for the stream profileevent 402 can include the total number of HD video streams and SD videostreams available in a wide area network (WAN) between the VHO 220 andthe customer premises 250. The data 408 can also include the totalnumber of ingress and egress HD video streams and SD video streamsavailable to the customer premises 250. Additionally, the data 408 caninclude the total amount of bandwidth allocated to the WAN, the totalamount of ingress bandwidth allocated in the WAN, and the total amountof egress bandwidth allocated in the WAN. A stream conflict eventstaging table can include some of the same data as the stream profileevent 402 and can additionally include the number of SD and HD videostreams being recorded, the total amount of bandwidth being consumed,the total number of SD and HD video streams being used, and the likewhen the stream conflict event is generated.

Referring again to FIG. 3, the SETI application server 308 can convertthe staging table 400 into a file that can be processed by the EDW 304.The SETI application server 308 can send the formatted file to the EDW304, which in turn can use the data in the formatted file to determinethe current bandwidth configuration for the customer premises 250 and todetermine a reason for the stream conflict event. For example, based onthe stream profile event, the EDW 304 can identify that a specific totalamount of bandwidth is currently allocated to the customer premises 250,and that two HD video streams and two SD video streams are available tothe customer premises. Based on the stream conflict event for thecustomer premises 250, the EDW 304 can identify that the number of HDvideo streams available to the customer premises was exceeded becausethe set-top box device 116 was recording two HD video streams andrequested to receive a third HD video stream.

The EDW 304 can use the television receiver identification 404 and therecording event time stamp 406 to determine how often a specific set-topbox device exceeds a limit set in the stream profile event. The EDW 304can also use the data from the stream profile event and the streamconflict event to determine what the current settings are for thecustomer premises 250 and whether the current settings should beupdated. For example, if the EDW 304 continually receives streamconflict events indicating that the number of HD and/or SD video streamsavailable to the customer premises 250 is being exceeded, the EDW 304can determine that the number of HD and/or SD video streams availableshould be increased. The EDW 304 can then use the stream profile eventto identify the number of HD and/or SD video streams currently availableto the customer premises 250, such that the EDW can determine a newtotal number of HD and/or SD video streams to make available to thecustomer premises.

FIG. 5 shows a flow diagram of a method 500 for generating a streamconflict event for the IPTV network 100. At block 502, a bandwidthconfiguration for each of a plurality of customer premises connected toa VHO is received. The bandwidth configuration can include the totalamount of bandwidth allocated to the customer premises, the total numberof HD video streams available for ingress and egress from the customerpremises, the total number of SD video streams available for ingress andegress from the customer premises, and the like. The bandwidthconfiguration for each of the plurality of customer premises is storedin a memory of a first server at block 504. At block 506, a data fileassociated with one of the customer premises is received from the VHO.The data file can indicate that a set-top box device located at the oneof the customer premises has requested a video stream that would exceeda first number of video streams available to the one of the customerpremises and wound exceed a first bandwidth currently allocated betweenthe VHO and the one of the customer premises.

At block 508, the data file is stored in the memory of the first server.The data file is formatted for use in a second server at block 510. Atblock 512, the formatted data file is transmitted to the second server.A second bandwidth to provide to the one of the customer premises isdetermined based on the formatted data file at block 514. At block 516,a second number of video streams to provide to the one of the customerpremises is determined based on the formatted data file.

FIG. 6 shows a flow diagram of a method 600 for updating the bandwidthconfiguration of the customer premises of the IPTV network 100. At block602, a bandwidth configuration is received for a customer premisesconnected to a VHO of the IPTV network. The bandwidth configuration caninclude the total amount of bandwidth allocated to the customerpremises, the total number of HD video streams available for ingress andegress from the customer premises, the total number of SD video streamsavailable for ingress and egress from the customer premises, and thelike. A data file is received for the customer premises at block 604.The data file can indicate that a set-top box device located at thecustomer premises has requested a video stream that would exceed a firstnumber of video streams available to the customer premises and woundexceed a first bandwidth currently allocated between the VHO and thecustomer premises. At block 606, the bandwidth configuration and thedata file are formatted for use in a server. The formatted bandwidthconfiguration and the formatted data file are transmitted to the serverat block 608.

At block 610, the bandwidth configuration and the data file for thecustomer premises are stored in a memory of the server. At block 612, asecond number of video streams used by the customer premises when thedata file was generated are determined. A third number of video streamsare provided to the customer premises from the VHO based on a differencebetween the first number of video streams and the second number of videostreams at block 614. At block 616, a second bandwidth to provide to thecustomer premises is determined based on the formatted data file.

FIG. 7 shows an illustrative embodiment of a general computer system700. The computer system 700 can include a set of instructions that canbe executed to cause the computer system to perform any one or more ofthe methods or computer based functions disclosed herein. The computersystem 700 may operate as a standalone device or may be connected, suchas by using a network, to other computer systems or peripheral devices.

In a networked deployment, the computer system may operate in thecapacity of a server or as a client user computer in a server-clientuser network environment, or as a peer computer system in a peer-to-peer(or distributed) network environment. The computer system 700 can alsobe implemented as or incorporated into various devices, such as apersonal computer (PC), a tablet PC, an STB, a personal digitalassistant (PDA), a mobile device, a palmtop computer, a laptop computer,a desktop computer, a communications device, a wireless telephone, aland-line telephone, a control system, a camera, a scanner, a facsimilemachine, a printer, a pager, a personal trusted device, a web appliance,a network router, switch or bridge, or any other machine capable ofexecuting a set of instructions (sequential or otherwise) that specifyactions to be taken by that machine. In a particular embodiment, thecomputer system 700 can be implemented using electronic devices thatprovide voice, video or data communication. Further, while a singlecomputer system 700 is illustrated, the term “system” shall also betaken to include any collection of systems or sub-systems thatindividually or jointly execute a set, or multiple sets, of instructionsto perform one or more computer functions.

The computer system 700 may include a processor 702, such as a centralprocessing unit (CPU), a graphics processing unit (GPU), or both.Moreover, the computer system 700 can include a main memory 704 and astatic memory 706 that can communicate with each other via a bus 708. Asshown, the computer system 700 may further include a video display unit710 such as a liquid crystal display (LCD), an organic light emittingdiode (OLED), a flat panel display, a solid state display, or a cathoderay tube (CRT). Additionally, the computer system 700 may include aninput device 712 such as a keyboard, and a cursor control device 714such as a mouse. The computer system 700 can also include a disk driveunit 716, a signal generation device 718 such as a speaker or remotecontrol, and a network interface device 720 to communicate with anetwork 726. In a particular embodiment, the disk drive unit 716 mayinclude a computer-readable medium 722 in which one or more sets ofinstructions 724, such as software, can be embedded. Further, theinstructions 724 may embody one or more of the methods or logic asdescribed herein. In a particular embodiment, the instructions 724 mayreside completely, or at least partially, within the main memory 704,the static memory 706, and/or within the processor 702 during executionby the computer system 700. The main memory 704 and the processor 702also may include computer-readable media.

The illustrations of the embodiments described herein are intended toprovide a general understanding of the structure of the variousembodiments. The illustrations are not intended to serve as a completedescription of all of the elements and features of apparatus and systemsthat utilize the structures or methods described herein. Many otherembodiments may be apparent to those of skill in the art upon reviewingthe disclosure. Other embodiments may be utilized and derived from thedisclosure, such that structural and logical substitutions and changesmay be made without departing from the scope of the disclosure.Additionally, the illustrations are merely representational and may notbe drawn to scale. Certain proportions within the illustrations may beexaggerated, while other proportions may be minimized Accordingly, thedisclosure and the FIGS. are to be regarded as illustrative rather thanrestrictive.

The Abstract of the Disclosure is provided to comply with 37 C.F.R.§1.72(b) and is submitted with the understanding that it will not beused to interpret or limit the scope or meaning of the claims. Inaddition, in the foregoing Detailed Description of the Drawings, variousfeatures may be grouped together or described in a single embodiment forthe purpose of streamlining the disclosure. This disclosure is not to beinterpreted as reflecting an intention that the claimed embodimentsrequire more features than are expressly recited in each claim. Rather,as the following claims reflect, inventive subject matter may bedirected to less than all of the features of any of the disclosedembodiments. Thus, the following claims are incorporated into theDetailed Description of the Drawings, with each claim standing on itsown as defining separately claimed subject matter.

The above disclosed subject matter is to be considered illustrative, andnot restrictive, and the appended claims are intended to cover all suchmodifications, enhancements, and other embodiments which fall within thetrue spirit and scope of the present disclosed subject matter. Thus, tothe maximum extent allowed by law, the scope of the present disclosedsubject matter is to be determined by the broadest permissibleinterpretation of the following claims and their equivalents, and shallnot be restricted or limited by the foregoing detailed description.

What is claimed is:
 1. A non-transitory computer-readable storagedevice, comprising instructions which, responsive to being executed by aprocessor, cause the processor to perform operations comprising:determining a bandwidth configuration of a plurality of customerpremises equipment that receive services from equipment of a videohead-end office of a media network; storing the bandwidth configurationof the plurality of customer premises equipment; processing a data fileassociated with the plurality of the customer premises equipment,wherein the data file indicates a first equipment of the plurality ofthe customer premises equipment that has requested a video stream;detecting from the data file a conflicting event based on adetermination that supplying the video stream to the first equipmentwould exceed a first number of video streams supplied to the pluralityof the customer premises equipment or would exceed the bandwidthconfiguration of the plurality of the customer premises equipment;determining a number of times that other conflicting events were createdby the first equipment; and updating the first number of video streamsor the bandwidth configuration based on the number of times.
 2. Thenon-transitory computer-readable storage device of claim 1, wherein theoperations further comprise determining whether to reconfigure thebandwidth configuration of the first equipment of the plurality ofcustomer premises equipment and the equipment of the video head-endoffice to resolve the conflicting event.
 3. The non-transitorycomputer-readable storage device of claim 1, wherein the data filecomprises an identification of the first equipment and wherein theprocessor comprises a plurality of processors operating in a distributedprocessing environment.
 4. The non-transitory computer-readable storagedevice of claim 1, wherein the data file comprises a total number ofvideo streams transmitted from the equipment of the video head-endoffice to the first equipment of the plurality of customer premisesequipment.
 5. The non-transitory computer-readable storage device ofclaim 1 wherein the data file comprises a first number of highdefinition video streams and a second number of standard definitionvideo streams being transmitted to the first equipment of the pluralityof customer premises equipment when the video stream was requested. 6.The non-transitory computer-readable storage device of claim 1, whereinthe data file comprises an indication that the video stream beingrequested would exceed the first number of video streams.
 7. Thenon-transitory computer-readable storage device of claim 1, wherein thebandwidth configuration comprises a first number of high definitionvideo streams and a second number of standard definition video streamsallocated to the first equipment.
 8. The non-transitorycomputer-readable storage device of claim 1, wherein the first equipmentcomprises a set-top box.
 9. A method, comprising: receiving, by a systemcomprising a processor, a table descriptive of services provided to aplurality of customer premises equipment by equipment of a videohead-end office; detecting, by the system, from the table a conflictingevent based on a determination that supplying a video stream to firstequipment of the plurality of customer premises equipment would exceed afirst number of video streams allocated to the plurality of customerpremises equipment or would exceed a communication bandwidth allocatedbetween the plurality of customer premises equipment and the equipmentof the video head-end office; determining, by the system, according tothe table, a second number of video streams to supply to the pluralityof the customer premises equipment to accommodate the video streamrequested by the first equipment of the plurality of customer premisesequipment; determining, by the system, a third number of video streamsto resolve the conflicting event based on a difference between the firstnumber of video streams and the second number of video streams;creating, by the system, a data file associated with the conflictingevent, wherein the data file indicates the first equipment of theplurality of the customer premises equipment that has requested thevideo stream; and determining, by the system, a second communicationbandwidth to allocate to the first equipment of the plurality ofcustomer premises equipment based on how often past data files have beencreated.
 10. The method of claim 9, further comprising instructing, bythe system, the equipment of the video head-end office to provide thethird number of video streams to the first equipment of the plurality ofcustomer premises equipment.
 11. The method of claim 9, wherein thetable comprises an identification of the first equipment and wherein theprocessor comprises a plurality of processors operating in a distributedprocessing environment.
 12. The method of claim 9, wherein the tablecomprises a total number of video streams transmitted from the equipmentof the video head-end office to the first equipment of the plurality ofcustomer premises equipment.
 13. The method of claim 9, wherein thetable comprises a first number of high definition video streams and asecond number of standard definition video streams transmitted to thefirst equipment of the plurality of customer premises equipment when thevideo stream was requested.
 14. The method of claim 9, wherein the tablecomprises an indication that the video stream being requested wouldexceed the first number of video streams and the communication bandwidthallocated to the first equipment.
 15. The method of claim 9, wherein thefirst equipment comprises a media processor.
 16. A system comprising: amemory to store instructions; and a processor coupled to the memory,wherein the processor, responsive to executing the instructions,performs operations comprising: identifying a table associated with aplurality of customer premises equipment that receives services fromequipment of a video head-end office, wherein the table indicates that afirst equipment of the plurality of customer premises equipment hasrequested a video stream that would exceed a first number of videostreams allocated to the plurality of customer premises equipment orwould exceed a bandwidth configuration allocated to the plurality ofcustomer premises equipment including the first equipment requesting thevideo stream; detecting a conflicting event according to information inthe table; creating a data file associated with the conflicting event,wherein the data file indicates the first equipment of the plurality ofthe customer premises equipment that has requested the video stream;reconfiguring the bandwidth configuration allocated to the firstequipment to resolve the conflicting event; and updating the table withthe bandwidth configuration allocated to the first equipment of theplurality of customer premises equipment based on how often past datafiles have been created.
 17. The system of claim 16, wherein theoperations further comprise updating the first number of video streamsallocated to the plurality of customer premises equipment in the table.18. The system of claim 16, wherein the bandwidth configurationcomprises a bandwidth allocation to each of the plurality of customerpremises equipment and wherein the processor comprises a plurality ofprocessors operating in a distributed processing environment.
 19. Thesystem of claim 16, wherein the operations further comprise updating atotal number of video streams transmitted from the equipment of thevideo head-end office to the plurality of customer premises equipment inthe table.
 20. The system of claim 16, wherein the table comprises afirst number of high definition video streams and a second number ofstandard definition video streams being transmitted to the plurality ofthe customer premises equipment when the video stream was requested bythe first equipment and wherein the operations further comprise updatingthe first number of high definition video streams and the second numberof standard definition video streams being transmitted to the pluralityof the customer premises equipment when the video stream was requestedby the first equipment in the table.